 |
08/05/2006, 12h28
|
[Tout sur Samurize] 9 : Un player dans la ville
|
#1
|
 |
 |
|
Move 'ZIG'
Date d'inscription: août 2003
Localisation: France (91)
Messages: 2 168
|
Leçon n°9 : Un player dans la ville
Temps estimé pour la création de la config : Pas mal de temps!
Remerciements - L'équipe de développeur de Samurize pour cet excellent logiciel
- Madness : correcteur et béta testeur officiel
- Tous les autres membres de la team CXP
I) Au commencement
Bienvenue 
La leçon d'aujourd'hui sera un peu différente des précédentes car elle sera moins guidée. Avec des configs à monter soit même (un peu comme ikea ).
Plein de nouveautées nous attendent : utilisation de plugin, nouveau
type d'affichage, fade in/fade out, ... Tout ceci en suivant la
création de configs pour afficher les infos de votre player de musique préféré.
Et ce ne sera pas 1, ni 2 configs que nous réaliserons mais bien 3 configs. Oui, vous avez bien lu, 3 configs
Information : Ces configs
ont été testé avec WMP, Winamp5, foobar 0.9.x et iTunes. Avec iTunes,
les linkages pour controler le player ne fonctionnent pas  mais le reste fonctionne.
Attention : Je n'ai pas testé avec d'autres players.
Pour le fonctionnement des configs, il faut vous assurer que le fichier AdvancedMediaPlayerInfo.dll est bien présent dans le repertoire plugins de Samurize et que les fichiers suivant (en fonction du player que vous utilisez) sont eux aussi présent dans leurs répertoires respectif :
- Winamp 5
o plugins/WinAmpSamurize.dll
o plugins/gen_samurizeinfo.dll - foobar
o components/foo_vis_samurize2.dll - Windows Media Player
o WM9SamurizeInfo.dll - iTunes
o plug-ins/iTunesSamurizeInfo.dll
Information : Tout ces fichiers devraient être présent si vous avez coché "Media Plugins" lors de l'installation de Samurize et que les players étaient déjà présent. Si vous utilisez un player que vous avez installé après Samurize, le plugin correspondant ne sera pas là, il vous faudra réinstaller Samurize pour corriger le problème.
Avant de commencer, voici un aperçu de ce que nous allons réaliser
La première config fonctionnera en quelques sortes comme
un popup. Elle apparaitra au debut d'une nouvelle chanson et
disparaitra au bout de quelques secondes. Le tout avec un effet de fade
in/fade out (apparition et disparition progressive).
Elle sera minimaliste puisqu'elle contiendra juste la pochette, le nom de l'artiste et le nom de la chanson (cf. Image1).
Image1
La deuxième config, quand à elle, sera affiché en permanence (enfin que quand un player est lancé) et sera plus complète (cf. Image2).
Image2
Pour celle-ci, il vous faut récupérer ce plugin , que j'ai créé et qui permet d'afficher la pochette de l'album avec le reflet.
Enfin, la 3e config est prévue pour se placer dans la barre des taches et comportera des boutons pour controler le player (cf. Image3). Faites un clic droit -> "Enregistrer l'image sous" car nous allons nous servir de cette image.
Image3
L'image est faite pour une config dans la barre des taches avec le VS .
Vous n'êtes bien sur pas obligé de l'utiliser si vous avez un autre VS
ou si vous voulez mettre la config sur le bureau et non pas dans la
barre des taches.
Maintenant que les présentations sont faites, on peut passer aux choses serieuses
Pour changer des leçons précédentes et parce que nous sommes à
l'avant-dernière leçon, je vais très peu entrer dans les détails pour
la création des configs.
Je décrirais bien évidemment les nouveautés, mais le reste qui a déjà
été vu de nombreuses fois (positionnement, choix des couleurs, etc...),
ne sera pas détaillé car après tout, la force de Samurize, c'est d'être personnalisable. Vous aurez donc carte blanche dans cette leçon
Conseil : Pensez à donner des noms explicite à vos contrôles. Cela vous aidera à retrouver facilement et rapidement l'élément que vous cherchez.
II) Acte1 : première config
C'est parti pour la première config qui devra apparaitre à chaque nouvelle chanson et disparaitre quelques secondes après.
Commençons par le skin. Personnelement, j'ai utilisé deux rectangle arrondi, un pour le fond en gris légérement transparent et le deuxième pour le contour en noir.
Choissisez une taille assez restreinte car peu d'informations seront
affichées. 120*160 me semble un bon choix. Je vous laisse libre en ce
qui concerne la position
Image4
On passe ensuite à l'ajout des informations. Pour cela dans le liste d'ajout des contrôles, sélectionnez le dernier élément plugins et dans le sous-menu choisissez AdvancedMediaPlayerInfo.dll.
Dans l'onglet Affichage, laissez que %v comme texte. Choisissez la police, la couleur, la position, la taille (enfin tous les réglages habituels ).
Puis allez dans l'onglet Source et dans la liste déroulante en dessous de Fonction à exécuter choisissez getArtistName (pour afficher le nom de l'artiste ) (cf. Image4).
Ajoutez un deuxième contrôle identique et choisissez cette fois-ci la fonction getTrackName (pour avoir le nom de la chanson...).
Vous pouvez cliquez sur le bouton "Test fonction" pour tester le contrôle sélectionné. Ou alors via le menu "Tester -> Tester tous les plugins" pour tous les contrôles.
Attention : Il faut qu'un player soit en marche sinon vous n'aurez aucun résultat
Conseil : Sur cette config, le contrôle est petit et le titre de la chanson peut être assez long. Pour éviter que le texte ne dépasse, vous pouvez, dans l'onglet Affichage, cochez les options en dessous de "Quand le texte est trop long..." pour couper ou faire défiler le texte
Ajoutez un troisième contrôle plugin. Celui-ci va nous permettre d'afficher la pochette de l'album. Pour ce faire, sélectionnez la fonction getAlbumCover.
Si vous testez maintenant ce contrôle, vous verrez qu'il affiche le chemin vers la pochette.
Mais nous ne voulons pas afficher du texte mais une image
Rien de plus simple, dans l'onglet Général, changez le "Type de dessin" en Image.
Positionnez les différents éléments comme bon vous semble. Vous pouvez
vous inspirer de l'image1. Par exemple, j'ai choisi une taille de
100*100 pour la pochette. Et j'ai ajouté un cadre noir autour (pas
besoin de détailler, vous devriez être capable de le faire tout seul ).
Cette config va apparaitre et disparaitre à chaque nouveau morceau. C'est une autre config qui la lancera mais il faut qu'elle se ferme au bout d'un certain temps.
Pour ce faire, on ajoute un dernier contrôle plugin. Supprimez le texte pour que ce contrôle soit invisble (son but est juste de fermer la config, pas besoin qu'il soit visible).
Choisissez getTrackTime comme fonction à exécuter.
Puis dans l'onglet Général, ajoutez une nouvelle alerte (voir le tuto précédent pour l'ajout d'alerte).
Réglez l'alerte comme ceci :- Alerter quand : Valeur égale à
- Valeur : 0:05 (pour laisser la config ouverte 5 secondes, mais vous pouvez changer la valeur)
- Exécuter la commande : client.exe close i=cover (i=cover permet de choisir le nom de l'instance, vous pouvez bien entendu choisir un autre nom)
Image5
Dernière étape de la création de cette première config de la leçon, l'activation de l'option pour la faire apparaitre et disparaitre progressivement.
Cela se passe dans l'onglet Options du projet. Cochez en dessous de "Paramètre du fondu", Démarrage/Arrêt et choisissez la durée du fondu : par exemple 1000 ms (cf. Image5).
|
|
|
|
 |
 |
|
|
|
 |
 |
08/05/2006, 12h29
|
|
#2
|
 |
 |
|
Move 'ZIG'
Date d'inscription: août 2003
Localisation: France (91)
Messages: 2 168
|
III) La config principal
On continue cette leçon avec la création de la config principal : celle qui sera affichée en permanence sur le bureau et qui contiendra le plus d'information.
Conseil :
Si vous choisissez de ne pas garder la même mise en forme que moi (pour
afficher plus d'info ou simplement pour changer la disposition), je
vous conseille de mettre en place les éléments décoratif une fois tous
les contrôles mis en place. C'est beaucoup plus facile d'adapter un skin à des infos que l'inverse.
Pour les 3 premiers éléments que j'ai choisis d'afficher (Artiste, Album et Titre : cf. Image2), c'est la même chose que précédemment. Il faut utiliser le plugin AdvancedMediaPlayerInfo.dll.
Les fonctions utilisées sont :- Artiste : getArtistName.
- Album : getDiscName.
- Titre : getTrackName.
Conseil : L'effet que j'ai donné au texte se fait très simplement en ajoutant une ombre. Dans l'onglet Affichage, cochez la case ombre. Et choisissez : - Couleur blanche pour le texte et noire pour l'ombre
- Transparence 200 pour le texte et l'ombre
On continue avec l'ajout de la barre de progression. Après l'ajout d'un contrôle plugin, sélectionnez Barre de progression en type de dessin dans l'onglet Général.
La taille que j'ai choisi est 220 en largeur et 15 en hauteur
La fonction à choisir est getTrackTimePercent.
Allez ensuite dans l'onglet Affichage pour modifier l'apparence du contrôle.
Attention :
Cette fonction retourne un pourcentage du temps écoulé. Assurez-vous
donc que les valeurs min et max soient 0 et 100 dans l'onglet Affichage.
Pour rajouter le temps écoulé et le temps total sous forme de texte, il faut utiliser respectivement les fonctions getTrackTime et getTrackLenght.
Positionnez ensuite ces deux éléments supplémentaires à l'intérieur de la barre de progression avec par exemple un contrôle texte entre les deux (avec juste '/' comme texte pour séparer les deux valeurs).
Enfin, pour finir, vous pouvez rajouter un cadre grâce à un autre contrôle texte (vide cette fois-ci).
On arrive maintenant à l'étape intéressante de cette config : l'ajout de la pochette avec le reflet. Pour cet effet, on va utiliser simultanément 2 plugins
On commence comme pour l'affichage de la pochette sur la config précédente : on ajoute un contrôle plugin AdvancedMediaPlayerInfo.dll.
Dans l'onglet Source, choisissez la fonction getAlbumCover. Comme vu précédemment, cette fonction retourne le chemin vers la pochette.
Image6
Mais cette fois-ci, nous allons utiliser un autre type d'affichage : Plugin visuel.
Cela permet d'appeler un plugin avec la valeur contenue dans le contrôle (ici le chemin vers une image) pour que ce plugin dessine quelque chose à l'écran (ici la pochette avec son reflet).
Après avoir sélectionné ce nouveau type d'affichage, direction l'onglet Affichage dans lequel il vous suffit de choisir Mirror.dll dans la liste déroulante (cf. Image6).
Pour ce plugin, il n'y a aucun réglage possible. Mais d'autres plugins visuel peuvent en avoir, il est alors possible de les configurer en cliquant sur le bouton adéquat
Information : Il y a donc différentes sortes de plugin : les classiques, les visuels (et un 3e type que nous verrons dans la prochaine partie).
Certains plugins peuvent être d'un seul type, d'autres de plusieurs en même temps. Ce qui explique que le contenu de la liste de l'Image6 ne soit pas le même que celui vu précédemment pour les contrôles plugin.
Pour en finir avec cette config, il ne reste plus qu'à faire un beau skin pour aller avec (donc pas comme ce que j'ai fait ) Mais je vais pas tout faire à votre place, il faut bien que vous travailliez un peu
Laissez parler votre créativité pour créer quelque chose de jolie. Et n'hésitez pas à poster vos résultats
IV) Une config pour les controler toutes
Nous voici enfin à la dernière config de cette leçon Celle qui va controler le player mais aussi les autres configs :- lancer la config principal uniquement si le player est lancé
- lancer la config cover au debut de chaque nouvelle chanson
C'est un peu comme un certain anneau (mon précieux...)
Information : 3 configs, c'est beaucoup, mais le choix a été fait pour montrer comment faire intéragir des configs entre elles.
Pour faire plus simple, on pourrai parfaitement fusionner cette config avec la précédente.
On commence par la mise en place de l'image que vous avez récupérer au
debut de la leçon (ou d'une autre image de votre choix si vous n'avez
pas le theme Sustenance).
La première chose que l'on va mettre en place, sera l'élément qui lance le popup au debut de chaque chanson.
Pour ce faire, ajoutez un contrôle plugin AdvancedMediaPlayerInfo.dll et sélectionnez la fonction getTrackTime.
Dans l'onglet Affichage, supprimez le texte pour que le contrôle soit invisible.
Enfin, allez dans l'onglet Général et ajoutez une alerte avec ces réglages :- Alerter quand : Valeur égale à
- Valeur : 0:01
- Exécuter la commande : C:\Program Files\Samurize\client exe i=cover c=Tuto9-cover.ini (vérifiez bien que le nom de l'instance est le même que celui que vous avez mis lors de la création de la 1ère config)
Attention : Si vous choisissez de mettre cette config dans la barre des taches, vous devez mettre le chemin complet vers client.exe dans la commande sinon cela ne marchera pas.
Ajoutez un 2e contrôle plugin, mais en sélectionnant la fonction PlayerStatus cette fois-ci. Enlevez le texte comme précédemment.
On va ensuite ajoutez deux alertes : une pour lancer la config si le player est lancé, l'autre pour l'action opposée.
Les réglages sont :- Alerter quand : Valeur égale à
- Valeur : "" (chaine vide, ne mettez pas les doubles quote
) - Exécuter la commande : C:\Program Files\Samurize\Client.exe close i=main (main sera le nom de l'instance de la config principal)
et :- Alerter quand : Valeur pas égale à
- Valeur : "" (encore chaine vide
) - Exécuter la commande : C:\Program Files\Samurize\Client.exe i=main c=Tuto9-main.ini (même nom d'intance que pour la première alerte)
Information : Ces deux contrôles ne servent qu'à controler les deux autres configs, c'est pour cela que l'on ne met aucun texte : ils ne doivent pas être visible.
Leurs positions dans la config n'a donc aucune importance.
Il ne reste plus que le linkage à mettre, pour cela nous allons utiliser le 3e type de plugins possible : les plugins d'entrée.
Et oui, on voit les 3 utilisations possible de plugin dans un seul tuto, je fais d'une pierre trois coup 
Nous allons faire trois boutons sur notre config, il nous faut donc trois contrôle texte (sans texte eux aussi pour être invisible). Allez ensuite dans l'onglet Entrée et cochez Autorise les contrôles d'entrée.
Cliquez sur Ajouter et dans la boite de dialogue, choisissez Plugin.
Cliquez sur Suivant, puis sélectionnez AdvancedMediaPlayerInfo.dll dans la liste déroulante.
Cliquez une dernière fois sur Suivant et cochez Clic bouton gauche.
Le bouton Configurer le plugin permet de choisir l'action à associer au clic.
Les 3 actions que j'ai choisi d'utiliser sur la config sont :- Skip to previous track (chanson précédente)
- Play/pause
- Skip to next track (chanson suivante)
3 contrôles et 3 actions. Le compte est bon
Il ne vous reste plus qu'à disposer tous les éléments pour terminer la config
|
|
|
|
 |
 |
|
|
|
 |
 |
08/05/2006, 16h37
|
|
#7
|
 |
 |
|
Avatar By Efdur ;-)
Date d'inscription: novembre 2005
Localisation: Ma Cage
Messages: 428
|
oula, c'est encore du lourd! ^^
belle belle rédaction Lefreut
Tcho et merci
|
|
|
|
 |
 |
|
|
|
 |
 |
08/05/2006, 23h19
|
|
#8
|
 |
 |
|
Move 'ZIG'
Date d'inscription: août 2003
Localisation: France (91)
Messages: 2 168
|
Merci pour vos commentaires
Citation:
|
Posté par Skyxcube
Euh
j'ai déjà posté un topic pour ça mais personne m'a répondu : mes mp3
ont tous un cover enregistré dans le tag et iTunes me l'affiche, mais
j'arrive pas à le récuperer dans Samurize, c'est possible ou pas?
Aaaa mé oui je sais, le Multi Plugin permet d'extraire le cover du
morceau dans un fichier image d'un dossier en particuler, de là il est
sans doute possible de la récupérer!!!
|
C'est peut être faisable avec ta méthode mais c'est tout de même se
compliquer la vie! Pourquoi ne pas récupérer les covers, cela serait
tout de même plus facile 
|
|
|
|
 |
 |
|
|
|
 |
 |
09/05/2006, 11h13
|
|
#9
|
 |
 |
|
mais je me soigne !!!!
Date d'inscription: mars 2005
Localisation: Earth & Space
Messages: 647
|

pour les pochettes, je n'arrive pas non plus à les recuperer des tags itunes...et je ne pense pas que cela soit faisable.
sinon, pour le controle d'itunes, j'utilise 3 .exe trouvé sur
samurize.com mais que je ne retrouve pas sur leur site...je peut les
fournir auquels cas...
bravo encore lefreut pour tes super tutos
|
|
|
|
 |
 |
|
|
|
 |
 |
09/05/2006, 16h33
|
|
#10
|
 |
 |
|
Le plus lapin des lapins
Date d'inscription: septembre 2003
Localisation: TOULOUSE (31)
Messages: 5 022
|
super pour cette leçon Lefreut 
je n'ai pas encore testé, mais comment fonctionne l'affichage des
pochettes ? le plugin va récuperer sur internet l'image à partir des
tags ? peux-t-on afficher les pochettes qui se trouveraient dans le
même répertoire que les fichiers audio (par exemple un fichier
folder.jpg) ?
|
|
|
|
 |
 |
|
|
|
 |
 |
09/05/2006, 17h34
|
|
#12
|
 |
 |
|
mais je me soigne !!!!
Date d'inscription: mars 2005
Localisation: Earth & Space
Messages: 647
|
Citation:
|
Posté par TPDK
super pour cette leçon Lefreut 
je n'ai pas encore testé, mais comment fonctionne l'affichage des
pochettes ? le plugin va récuperer sur internet l'image à partir des
tags ? peux-t-on afficher les pochettes qui se trouveraient dans le
même répertoire que les fichiers audio (par exemple un fichier
folder.jpg) ?
|
l'affichage s'effectue de deux maniere...
soit tu possede un fichier folder.jpg dans le repertoire de l'album
soit tu possede un fichier nom _de_l_artiste -
nom_du_morceau_ou_album.jpg dans le dossier cover du repertoire
samurize (cree automatiquement)
soit il va chercher la pochette en fonction des tags (attention
orthographe) sur le site d'amazone. il rajoute ce fichier dans le
repertoire covers dans samurize.
bon, ça fait en fait trois manieres mais les deux derniere se
recoupe...classé dans l'ordre auquels samurize donne la priorité...
 bravo pour tous tes tutos je l'ai dit déja non ?
|
|
|
|
 |
 |
|
|
|
 |
 |
09/05/2006, 17h35
|
|
#13
|
 |
 |
|
Move 'ZIG'
Date d'inscription: août 2003
Localisation: France (91)
Messages: 2 168
|
Citation:
|
Posté par TPDK
le plugin va récuperer sur internet l'image à partir des tags ?
|
Oui.
Citation:
|
Posté par TPDK
peux-t-on
afficher les pochettes qui se trouveraient dans le même répertoire que
les fichiers audio (par exemple un fichier folder.jpg) ?
|
Possible aussi 
|
|
|
|
 |
 |
|
|
|
 |
 |
17/05/2006, 18h41
|
|
#15
|
 |
 |
|
-
Date d'inscription: mai 2005
Messages: 286
|
Citation:
|
Posté par Lefreut
Citation:
|
Posté par TPDK
peux-t-on afficher les pochettes qui se trouveraient dans le même
répertoire que les fichiers audio (par exemple un fichier folder.jpg) ?
|
Possible aussi 
|
Voilà, mais chez moi, ça marche pas... pourtant ça a l'air simple.
Nouveau contrôle > Plugin > AdvanceMediaetc. ; getAlbumCover en
source. Mais rien ne s'affiche quand je fais jouer une piste dont je
sais pertinement qu'elle est dans un dossier avec un folder.jpg, que
Winamp m'affiche très bien...
Y a-t'il de la configuration de plugin que j'aurais loupée ?
Merci d'avance, chef 
|
|
|
|
 |
 |
|
|
|
 |
 |
17/05/2006, 21h03
|
|
#17
|
 |
 |
|
Move 'ZIG'
Date d'inscription: août 2003
Localisation: France (91)
Messages: 2 168
|
Skyxcube -> Sous Winamp, c'est écrit dans le post
AkaiKen -> tu a bien ces fichiers?
Citation:
- Winamp 5
o plugins/WinAmpSamurize.dll
o plugins/gen_samurizeinfo.dll
|
C'est juste les pochettes qui ne marchent pas? ou le reste aussi?
|
|
|
|
 |
 |
|
|
|
 |
 |
19/05/2006, 08h44
|
|
#19
|
 |
 |
|
-
Date d'inscription: mai 2005
Messages: 286
|
Bon ben moi non plus je sais pas lire 
J'ai dû mettre Winamp à jour plus récemment que Samurize, et j'avais
pas bien lu ton intro... Donc, non, je n'ai pas ces deux dll.
Je vais de ce pas réinstaller Samurize... (n'y a-t'il pas un autre moyen ?)
EDIT : c'est réinstallé  ... et ça marche ! Merci beaucoup, Lefreut (chef) !
|
|
|
|
 |
 |
|
|
|
 |
|